{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "5DKDTnMGHTGn"
   },
   "source": [
    "# If you are using Colab for free, we highly recommend you activate the T4 GPU\n",
    "# hardware accelerator. Our models are designed to run with at least 16GB\n",
    "# of RAM, activating T4 will grant the notebook 16GB of GDDR6 RAM as opposed\n",
    "# to the ~13GB Colab gives automatically.\n",
    "# To activate T4:\n",
    "# 1. click on the \"Runtime\" tab\n",
    "# 2. click on \"Change runtime type\"\n",
    "# 3. select T4 GPU under Hardware Accelerator\n",
    "# NOTE: there is a weekly usage limit on using T4 for free"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "iZ0qxGqFFHrz"
   },
   "source": [
    "\n",
    "\"\"\" This example illustrates a more complex recipe to generate a structured financial research dictionary with\n",
    "    30 keys and values produced, using a combination of models and web services:\n",
    "\n",
    "    Models\n",
    "    1.  slim-extract-tool\n",
    "    2.  slim-summary-tool\n",
    "    3.  bling-stablelm-3b-tool\n",
    "\n",
    "    Web Services\n",
    "    1.  Yfinance - stock ticker\n",
    "    2.  Wikipedia - company background information\n",
    "\n",
    "    The example shows how to extract keys from one source that can then be used as a lookup in a web service to\n",
    "    supplement the original source materials, and provide a secondary source, which can then also be prompted and\n",
    "    used to extract, analyze and summarize key information.\n",
    "\n",
    "    \"\"\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "cq_s3hGOR4lh",
    "outputId": "2d7cb90c-3cc7-4984-c58c-b1810421ec79"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Requirement already satisfied: YFinance in /usr/local/lib/python3.10/dist-packages (0.2.40)\n",
      "Requirement already satisfied: pandas>=1.3.0 in /usr/local/lib/python3.10/dist-packages (from YFinance) (2.0.3)\n",
      "Requirement already satisfied: numpy>=1.16.5 in /usr/local/lib/python3.10/dist-packages (from YFinance) (1.25.2)\n",
      "Requirement already satisfied: requests>=2.31 in /usr/local/lib/python3.10/dist-packages (from YFinance) (2.31.0)\n",
      "Requirement already satisfied: multitasking>=0.0.7 in /usr/local/lib/python3.10/dist-packages (from YFinance) (0.0.11)\n",
      "Requirement already satisfied: lxml>=4.9.1 in /usr/local/lib/python3.10/dist-packages (from YFinance) (4.9.4)\n",
      "Requirement already satisfied: platformdirs>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from YFinance) (4.2.2)\n",
      "Requirement already satisfied: pytz>=2022.5 in /usr/local/lib/python3.10/dist-packages (from YFinance) (2023.4)\n",
      "Requirement already satisfied: frozendict>=2.3.4 in /usr/local/lib/python3.10/dist-packages (from YFinance) (2.4.4)\n",
      "Requirement already satisfied: peewee>=3.16.2 in /usr/local/lib/python3.10/dist-packages (from YFinance) (3.17.5)\n",
      "Requirement already satisfied: beautifulsoup4>=4.11.1 in /usr/local/lib/python3.10/dist-packages (from YFinance) (4.12.3)\n",
      "Requirement already satisfied: html5lib>=1.1 in /usr/local/lib/python3.10/dist-packages (from YFinance) (1.1)\n",
      "Requirement already satisfied: soupsieve>1.2 in /usr/local/lib/python3.10/dist-packages (from beautifulsoup4>=4.11.1->YFinance) (2.5)\n",
      "Requirement already satisfied: six>=1.9 in /usr/local/lib/python3.10/dist-packages (from html5lib>=1.1->YFinance) (1.16.0)\n",
      "Requirement already satisfied: webencodings in /usr/local/lib/python3.10/dist-packages (from html5lib>=1.1->YFinance) (0.5.1)\n",
      "Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.0->YFinance) (2.8.2)\n",
      "Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.0->YFinance) (2024.1)\n",
      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.31->YFinance) (3.3.2)\n",
      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.31->YFinance) (3.7)\n",
      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.31->YFinance) (2.0.7)\n",
      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.31->YFinance) (2024.6.2)\n",
      "Collecting wikipedia-api\n",
      "  Downloading Wikipedia_API-0.6.0-py3-none-any.whl (14 kB)\n",
      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from wikipedia-api) (2.31.0)\n",
      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->wikipedia-api) (3.3.2)\n",
      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->wikipedia-api) (3.7)\n",
      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->wikipedia-api) (2.0.7)\n",
      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->wikipedia-api) (2024.6.2)\n",
      "Installing collected packages: wikipedia-api\n",
      "Successfully installed wikipedia-api-0.6.0\n",
      "Collecting llmware\n",
      "  Downloading llmware-0.3.2-py3-none-any.whl (56.0 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m56.0/56.0 MB\u001b[0m \u001b[31m12.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting boto3>=1.24.53 (from llmware)\n",
      "  Downloading boto3-1.34.138-py3-none-any.whl (139 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m139.2/139.2 kB\u001b[0m \u001b[31m8.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: huggingface-hub>=0.19.4 in /usr/local/lib/python3.10/dist-packages (from llmware) (0.23.4)\n",
      "Requirement already satisfied: numpy>=1.23.2 in /usr/local/lib/python3.10/dist-packages (from llmware) (1.25.2)\n",
      "Collecting pymongo>=4.7.0 (from llmware)\n",
      "  Downloading pymongo-4.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.2/1.2 MB\u001b[0m \u001b[31m32.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: tokenizers>=0.15.0 in /usr/local/lib/python3.10/dist-packages (from llmware) (0.19.1)\n",
      "Collecting psycopg-binary==3.1.17 (from llmware)\n",
      "  Downloading psycopg_binary-3.1.17-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.3/3.3 MB\u001b[0m \u001b[31m46.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting psycopg==3.1.17 (from llmware)\n",
      "  Downloading psycopg-3.1.17-py3-none-any.whl (178 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m178.0/178.0 kB\u001b[0m \u001b[31m20.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting pgvector==0.2.4 (from llmware)\n",
      "  Downloading pgvector-0.2.4-py2.py3-none-any.whl (9.6 kB)\n",
      "Collecting colorama==0.4.6 (from llmware)\n",
      "  Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\n",
      "Requirement already satisfied: librosa>=0.10.0 in /usr/local/lib/python3.10/dist-packages (from llmware) (0.10.2.post1)\n",
      "Requirement already satisfied: typing-extensions>=4.1 in /usr/local/lib/python3.10/dist-packages (from psycopg==3.1.17->llmware) (4.12.2)\n",
      "Collecting botocore<1.35.0,>=1.34.138 (from boto3>=1.24.53->llmware)\n",
      "  Downloading botocore-1.34.138-py3-none-any.whl (12.4 MB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m12.4/12.4 MB\u001b[0m \u001b[31m94.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hCollecting jmespath<2.0.0,>=0.7.1 (from boto3>=1.24.53->llmware)\n",
      "  Downloading jmespath-1.0.1-py3-none-any.whl (20 kB)\n",
      "Collecting s3transfer<0.11.0,>=0.10.0 (from boto3>=1.24.53->llmware)\n",
      "  Downloading s3transfer-0.10.2-py3-none-any.whl (82 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m82.7/82.7 kB\u001b[0m \u001b[31m11.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.4->llmware) (3.15.4)\n",
      "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.4->llmware) (2023.6.0)\n",
      "Requirement already satisfied: packaging>=20.9 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.4->llmware) (24.1)\n",
      "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.4->llmware) (6.0.1)\n",
      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.4->llmware) (2.31.0)\n",
      "Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.4->llmware) (4.66.4)\n",
      "Requirement already satisfied: audioread>=2.1.9 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (3.0.1)\n",
      "Requirement already satisfied: scipy>=1.2.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (1.11.4)\n",
      "Requirement already satisfied: scikit-learn>=0.20.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (1.2.2)\n",
      "Requirement already satisfied: joblib>=0.14 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (1.4.2)\n",
      "Requirement already satisfied: decorator>=4.3.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (4.4.2)\n",
      "Requirement already satisfied: numba>=0.51.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (0.58.1)\n",
      "Requirement already satisfied: soundfile>=0.12.1 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (0.12.1)\n",
      "Requirement already satisfied: pooch>=1.1 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (1.8.2)\n",
      "Requirement already satisfied: soxr>=0.3.2 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (0.3.7)\n",
      "Requirement already satisfied: lazy-loader>=0.1 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (0.4)\n",
      "Requirement already satisfied: msgpack>=1.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->llmware) (1.0.8)\n",
      "Collecting dnspython<3.0.0,>=1.16.0 (from pymongo>=4.7.0->llmware)\n",
      "  Downloading dnspython-2.6.1-py3-none-any.whl (307 kB)\n",
      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m307.7/307.7 kB\u001b[0m \u001b[31m39.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
      "\u001b[?25hRequirement already satisfied: python-dateutil<3.0.0,>=2.1 in /usr/local/lib/python3.10/dist-packages (from botocore<1.35.0,>=1.34.138->boto3>=1.24.53->llmware) (2.8.2)\n",
      "Requirement already satisfied: urllib3!=2.2.0,<3,>=1.25.4 in /usr/local/lib/python3.10/dist-packages (from botocore<1.35.0,>=1.34.138->boto3>=1.24.53->llmware) (2.0.7)\n",
      "Requirement already satisfied: llvmlite<0.42,>=0.41.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba>=0.51.0->librosa>=0.10.0->llmware) (0.41.1)\n",
      "Requirement already satisfied: platformdirs>=2.5.0 in /usr/local/lib/python3.10/dist-packages (from pooch>=1.1->librosa>=0.10.0->llmware) (4.2.2)\n",
      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.19.4->llmware) (3.3.2)\n",
      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.19.4->llmware) (3.7)\n",
      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.19.4->llmware) (2024.6.2)\n",
      "Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn>=0.20.0->librosa>=0.10.0->llmware) (3.5.0)\n",
      "Requirement already satisfied: cffi>=1.0 in /usr/local/lib/python3.10/dist-packages (from soundfile>=0.12.1->librosa>=0.10.0->llmware) (1.16.0)\n",
      "Requirement already satisfied: pycparser in /usr/local/lib/python3.10/dist-packages (from cffi>=1.0->soundfile>=0.12.1->librosa>=0.10.0->llmware) (2.22)\n",
      "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil<3.0.0,>=2.1->botocore<1.35.0,>=1.34.138->boto3>=1.24.53->llmware) (1.16.0)\n",
      "Installing collected packages: psycopg-binary, psycopg, pgvector, jmespath, dnspython, colorama, pymongo, botocore, s3transfer, boto3, llmware\n",
      "Successfully installed boto3-1.34.138 botocore-1.34.138 colorama-0.4.6 dnspython-2.6.1 jmespath-1.0.1 llmware-0.3.2 pgvector-0.2.4 psycopg-3.1.17 psycopg-binary-3.1.17 pymongo-4.8.0 s3transfer-0.10.2\n"
     ]
    }
   ],
   "source": [
    "!pip install YFinance\n",
    "!pip install wikipedia-api\n",
    "!pip install llmware"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 1000,
     "referenced_widgets": [
      "2a5570ef8bbd4d9cbc965e1a1872daa0",
      "02d42d1c0d104a849c09c14a14ddd774",
      "42fb8aaca8114edaba0853c28741e199",
      "332c64b2fead4a2c8d8f65690d74a22e",
      "a750d844c86148bfb5b39c34b26b42a3",
      "6262dbdd76f5406d977c035a9747f6f8",
      "cd294ad0b5c14af59be1106700179200",
      "02ff0f346ade4f7190d158598916bdf1",
      "e3533899a9d34bed9669d72c74f28933",
      "bac1b3f941c84acba980a62395981e00",
      "e413397fb74942158c9fe27b3a2dc3cc",
      "fc5c544522b4494b8526088d092fdf31",
      "d6a1ad8c1eb44f9a9e95c90f67bc8137",
      "d72368cf2dfe4b67bb73f238507d05c6",
      "b878681634cb4505b33a5dc139abb06d",
      "0a2d8a7481604e5ea53b3353ed96a8b4",
      "19afff5f83c04aea95de1828c2c50690",
      "14fd6f274e3d4c609c46de517184c0d1",
      "72a003a867dd44e2aad1521b8bf20da3",
      "c90fb61f65954b209fcd8d6043031311",
      "dbe6788d396a42228aa2699dced0e481",
      "a50bfb38fbf64413a7a0125a3d157dd8",
      "403a012747b44a6fbb5b570bf98d5a71",
      "425e9c03414d4d62864dbe20af462e89",
      "227a70e7abdf4a34b796e110848b089e",
      "e189c705be104b6e8f480d62ab16fde0",
      "0c975ae83ad94f259b5b9e0b76fbb2a9",
      "9d06a33c549a4199b4af3f1f48ff5fd1",
      "8004072db97e460f83503c899fac9a01",
      "713b2d8c0681493c95196f4d56851ef7",
      "02b9d8c1cd154c828d7307b4b056b703",
      "ee34da33d0ae412f812f132358ab22f1",
      "97d5361038274f15aaec50e9736f96ef",
      "92b2eb8c11a548b7b4d0e09f8a6e6802",
      "2b134ea124b64b838f7ba7b9f461a26b",
      "1f2909f9240345ed9ed892f24c57a42f",
      "bb6b60b1ac6841708c0bd7497dbd2976",
      "b8d4e49b68dd48a49072794539d822fc",
      "0e518c2dfd6247c0b4db11b93404630b",
      "0ddc467890d74624a5c6c731121dc52c",
      "57778bdaee4b47038ed72c41968e25e9",
      "4517b4a70120428c934dd9f1647a107d",
      "8410ee6ef7c34ef7a8d2c94c78d8f95a",
      "f4a0f46c7fb344c881b470fb96150d12",
      "ec7d3edf94a744518d4a71df9ec7f5a3",
      "853f66999986457cb1d52d8622f02cb8",
      "4e0a1748248843d8978f6e224a09894f",
      "7f41c49ce2ff417e8db0e178ae70e457",
      "bd79a5726d544a06aa891f08d12de28b",
      "ee4554c9acf749e2b6ccb81685277cac",
      "89a269f8b10e4db6a7d22cfb59797b53",
      "0d155d9516104c72bb8047e53aa3ae2f",
      "ef74d1ac40d44268b6930a456e1a1fc4",
      "21e242b1386147e8a2f7b78113e5bd5b",
      "80c197dbbc114735b9d62f0236d534da"
     ]
    },
    "id": "ZxHLecaSSrYl",
    "outputId": "9ee291df-a17b-4121-878b-4a9a62b7e1a3"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "WARNING:llmware.models:ModelCatalog - load_model - fetching model - bling-stablelm-3b-tool - from remote repository using pull_snapshot_from_hf - this may take a couple of minutes the first time.\n",
      "/usr/local/lib/python3.10/dist-packages/huggingface_hub/file_download.py:1194: UserWarning: `local_dir_use_symlinks` parameter is deprecated and will be ignored. The process to download files to a local folder has been updated and do not rely on symlinks anymore. You only need to pass a destination folder as`local_dir`.\n",
      "For more details, check out https://huggingface.co/docs/huggingface_hub/main/en/guides/download#download-files-to-local-folder.\n",
      "  warnings.warn(\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2a5570ef8bbd4d9cbc965e1a1872daa0",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Fetching 4 files:   0%|          | 0/4 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fc5c544522b4494b8526088d092fdf31",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       ".gitattributes:   0%|          | 0.00/1.57k [00:00<?, ?B/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "403a012747b44a6fbb5b570bf98d5a71",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "README.md:   0%|          | 0.00/1.58k [00:00<?, ?B/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "92b2eb8c11a548b7b4d0e09f8a6e6802",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "config.json:   0%|          | 0.00/247k [00:00<?, ?B/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ec7d3edf94a744518d4a71df9ec7f5a3",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "bling-stablelm.gguf:   0%|          | 0.00/1.71G [00:00<?, ?B/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Step 1 - extract information from source text\n",
      "\n",
      "update: extracting - stock ticker - {'stock_ticker': ['NYSE:NKE']}\n",
      "update: extracting - company name - {'company_name': ['NIKE, Inc.']}\n",
      "update: extracting - total revenues - {'total_revenues': ['$12.4 billion']}\n",
      "update: extracting - restructuring charges - {'restructuring_charges': ['$340 million']}\n",
      "update: extracting - digital growth - {'digital_growth': ['NIKE Brand Digital sales decreased 3% on a reported basis and 4% on a currency-neutral basis.']}\n",
      "update: extracting - ceo comment - {'ceo_comment': ['NIKE is making the necessary adjustments to drive NIKEs next chapter of growth.']}\n",
      "update: extracting - quarter end date - {'quarter_end_date': ['February 29, 2024']}\n",
      "\n",
      "Step 2 - use extracted stock ticker in web service lookup to YFinance\n",
      "\n",
      "yahoo finance stock info:  {'shortName': 'Nike, Inc.', 'symbol': 'NKE', 'exchange': 'NYQ', 'bid': 75.21, 'ask': 75.3, 'fiftyTwoWeekLow': 74.29, 'fiftyTwoWeekHigh': 123.39, 'longName': 'NIKE, Inc.', 'currentPrice': 75.24, 'targetHighPrice': 120.0, 'targetLowPrice': 60.0, 'returnOnAssets': 0.10429, 'returnOnEquity': 0.40093, 'trailingPE': 20.171581, 'forwardPE': 21.01676, 'volume': 15777904, 'forwardEps': 3.58, 'pegRatio': 3.06, 'currency': 'USD'}\n",
      "yahoo finance fin info -  {'shortName': 'Nike, Inc.', 'symbol': 'NKE', 'marketCap': 113564246016, 'totalRevenue': 51362000896, 'ebitda': 7164333056, 'revenueGrowth': -0.017, 'grossMargins': 0.4456, 'priceToSalesTrailing12Months': 2.2110558, 'currency': 'USD'}\n",
      "yahoo finance company info -  {'shortName': 'Nike, Inc.', 'longName': 'NIKE, Inc.', 'symbol': 'NKE', 'marketCap': 113564246016, 'companyOfficers': [{'maxAge': 1, 'name': 'Mr. Mark G. Parker', 'age': 67, 'title': 'Executive Chairman', 'yearBorn': 1956, 'fiscalYear': 2023, 'totalPay': 7638047, 'exercisedValue': 19443600, 'unexercisedValue': 72487264}, {'maxAge': 1, 'name': 'Mr. John J. Donahoe II', 'age': 62, 'title': 'President, CEO & Director', 'yearBorn': 1961, 'fiscalYear': 2023, 'totalPay': 12322059, 'exercisedValue': 0, 'unexercisedValue': 3846427}, {'maxAge': 1, 'name': 'Mr. Matthew  Friend', 'age': 45, 'title': 'Executive VP & CFO', 'yearBorn': 1978, 'fiscalYear': 2023, 'totalPay': 3661404, 'exercisedValue': 0, 'unexercisedValue': 4339626}, {'maxAge': 1, 'name': \"Ms. Heidi  O'Neill\", 'age': 57, 'title': 'President of Consumer, Product & Brand', 'yearBorn': 1966, 'fiscalYear': 2023, 'totalPay': 3690250, 'exercisedValue': 0, 'unexercisedValue': 2007165}, {'maxAge': 1, 'name': 'Mr. Philip H. Knight', 'age': 85, 'title': 'Co-Founder & Chairman Emeritus', 'yearBorn': 1938, 'fiscalYear': 2023, 'totalPay': 3069594, 'exercisedValue': 0, 'unexercisedValue': 0}, {'maxAge': 1, 'name': 'Ms. Johanna  Nielsen', 'age': 45, 'title': 'VP of Controlling & Principal Accounting Officer', 'yearBorn': 1978, 'fiscalYear': 2023, 'exercisedValue': 0, 'unexercisedValue': 0}, {'maxAge': 1, 'name': 'Dr. Muge Erdirik Dogan', 'title': 'Chief Technology Officer', 'fiscalYear': 2023, 'exercisedValue': 0, 'unexercisedValue': 0}, {'maxAge': 1, 'name': 'Mr. Paul  Trussell C.F.A.', 'title': 'VP of Investor Relations & Strategic Finance', 'fiscalYear': 2023, 'exercisedValue': 0, 'unexercisedValue': 0}, {'maxAge': 1, 'name': 'Ms. Ann M. Miller', 'age': 48, 'title': 'Executive VP & Chief Legal Officer', 'yearBorn': 1975, 'fiscalYear': 2023, 'exercisedValue': 0, 'unexercisedValue': 0}, {'maxAge': 1, 'name': 'Mr. KeJuan  Wilkins', 'title': 'Executive VP & Chief Communications Officer', 'fiscalYear': 2023, 'exercisedValue': 0, 'unexercisedValue': 0}], 'website': 'https://www.nike.com', 'industry': 'Footwear & Accessories', 'sector': 'Consumer Cyclical', 'longBusinessSummary': 'NIKE, Inc., together with its subsidiaries, designs, develops, markets, and sells athletic footwear, apparel, equipment, accessories, and services worldwide. The company provides athletic and casual footwear, apparel, and accessories under the Jumpman trademark; and casual sneakers, apparel, and accessories under the Converse, Chuck Taylor, All Star, One Star, Star Chevron, and Jack Purcell trademarks. It also sells a line of performance equipment and accessories comprising bags, sport balls, socks, eyewear, timepieces, digital devices, bats, gloves, protective equipment, and other equipment for sports activities under the NIKE brand; and various plastic products to other manufacturers. In addition, the company markets apparel with licensed college and professional team, and league logos, as well as sells sports apparel; and licenses unaffiliated parties to manufacture and sell apparel, digital devices, and applications and other equipment for sports activities under NIKE-owned trademarks. It sells its products to footwear stores; sporting goods stores; athletic specialty stores; department stores; skate, tennis, and golf shops; and other retail accounts through NIKE-owned retail stores, digital platforms, independent distributors, licensees, and sales representatives. NIKE, Inc. was founded in 1964 and is headquartered in Beaverton, Oregon.'}\n",
      "\n",
      "Step 3 - use extracted company name to lookup in Wikipedia web service - and add background data\n",
      "\n",
      "-- calling summary model to summarize the first part of the Wikipedia article\n",
      "-- slim-summary - summary (5 points):  {'llm_response': ['Nike Inc. was founded on January 25 1964 as ', 'by Bill Bowerman and Phil Knight', 'The company was officially named Nike Inc. on May 30 1971', 'Nike is the worlds largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment', 'Nike sponsors many high-profile athletes and sports teams around the world', 'Nike is the most valuable brand among sports businesses'], 'usage': {'input': 382, 'output': 97, 'total': 479, 'metric': 'tokens', 'processing_time': 7.923415422439575, 'type': 'list', 'remediation': True}, 'logits': [[(13961, 1.0), (187, 0.0), (18256, 0.0), (1966, 0.0), (8801, 0.0), (78, 0.0), (14, 0.0), (67, 0.0), (15, 0.0), (1342, 0.0)], [(47, 0.631), (39, 0.186), (25310, 0.049), (8252, 0.023), (510, 0.019), (13652, 0.015), (2374, 0.013), (22423, 0.01), (32088, 0.007), (3, 0.004)], [(2804, 0.999), (6541, 0.0), (13972, 0.0), (587, 0.0), (366, 0.0), (460, 0.0), (1758, 0.0), (8678, 0.0), (6840, 0.0), (1479, 0.0)], [(13, 0.761), (369, 0.107), (310, 0.069), (3690, 0.03), (313, 0.008), (428, 0.004), (3053, 0.004), (11420, 0.003), (556, 0.001), (5550, 0.001)], [(3690, 0.983), (11420, 0.009), (253, 0.001), (310, 0.001), (247, 0.001), (50276, 0.001), (4232, 0.0), (271, 0.0), (369, 0.0), (11217, 0.0)], [(15, 0.887), (904, 0.049), (369, 0.023), (13, 0.013), (310, 0.01), (313, 0.005), (2464, 0.003), (428, 0.002), (1383, 0.002), (12567, 0.001)], [(369, 0.434), (310, 0.299), (313, 0.147), (11420, 0.024), (428, 0.022), (50276, 0.017), (5550, 0.013), (3053, 0.011), (50275, 0.004), (556, 0.003)], [(11420, 0.975), (4232, 0.006), (4447, 0.004), (11217, 0.003), (8927, 0.002), (3053, 0.002), (3562, 0.001), (253, 0.001), (10098, 0.001), (15335, 0.001)], [(327, 0.865), (347, 0.046), (275, 0.038), (407, 0.035), (4247, 0.009), (2552, 0.002), (13, 0.001), (3344, 0.001), (285, 0.0), (27, 0.0)], [(4247, 0.979), (3344, 0.017), (2552, 0.002), (4163, 0.0), (337, 0.0), (2030, 0.0), (4162, 0.0), (5080, 0.0), (3919, 0.0), (27, 0.0)], [(2030, 0.998), (13, 0.001), (2164, 0.0), (3436, 0.0), (15, 0.0), (1099, 0.0), (337, 0.0), (3435, 0.0), (3349, 0.0), (50276, 0.0)], [(13, 0.999), (15, 0.0), (1157, 0.0), (394, 0.0), (275, 0.0), (1383, 0.0), (904, 0.0), (347, 0.0), (14, 0.0), (209, 0.0)], [(17926, 0.989), (29639, 0.002), (9354, 0.001), (50276, 0.001), (6157, 0.001), (4059, 0.001), (12459, 0.001), (17601, 0.001), (1384, 0.0), (19949, 0.0)], [(13, 0.695), (1383, 0.222), (347, 0.047), (407, 0.024), (15, 0.005), (6038, 0.001), (40219, 0.001), (762, 0.001), (4117, 0.001), (313, 0.001)], [(347, 0.859), (407, 0.122), (285, 0.004), (1383, 0.003), (762, 0.002), (342, 0.002), (4907, 0.001), (1925, 0.001), (50276, 0.001), (275, 0.001)], [(346, 0.766), (10063, 0.125), (686, 0.093), (2634, 0.004), (773, 0.004), (50276, 0.002), (15078, 0.002), (20890, 0.001), (1383, 0.0), (2802, 0.0)], [(22036, 1.0), (35, 0.0), (47, 0.0), (5622, 0.0), (10063, 0.0), (510, 0.0), (11863, 0.0), (5993, 0.0), (15383, 0.0), (25310, 0.0)], [(31641, 0.999), (416, 0.0), (50276, 0.0), (28188, 0.0), (51, 0.0), (37491, 0.0), (1383, 0.0), (11879, 0.0), (686, 0.0), (7121, 0.0)], [(4006, 1.0), (21111, 0.0), (5568, 0.0), (3508, 0.0), (67, 0.0), (23798, 0.0), (4152, 0.0), (4805, 0.0), (15801, 0.0), (251, 0.0)], [(15000, 0.999), (21483, 0.001), (1383, 0.0), (995, 0.0), (2101, 0.0), (1608, 0.0), (9001, 0.0), (22344, 0.0), (50276, 0.0), (8, 0.0)], [(995, 0.512), (3, 0.455), (937, 0.011), (3446, 0.01), (449, 0.005), (3664, 0.004), (13, 0.002), (1383, 0.001), (9686, 0.0), (6624, 0.0)], [(407, 0.99), (1383, 0.005), (285, 0.003), (327, 0.001), (50276, 0.001), (342, 0.0), (11420, 0.0), (6038, 0.0), (275, 0.0), (8, 0.0)], [(7641, 0.998), (7252, 0.001), (50276, 0.0), (767, 0.0), (1383, 0.0), (33663, 0.0), (697, 0.0), (15217, 0.0), (11731, 0.0), (50275, 0.0)], [(10427, 0.997), (285, 0.001), (378, 0.0), (50276, 0.0), (1383, 0.0), (19466, 0.0), (15, 0.0), (686, 0.0), (7233, 0.0), (12143, 0.0)], [(8592, 1.0), (39968, 0.0), (36687, 0.0), (3766, 0.0), (35406, 0.0), (3796, 0.0), (693, 0.0), (6702, 0.0), (1808, 0.0), (257, 0.0)], [(285, 0.997), (1383, 0.002), (13, 0.001), (708, 0.001), (313, 0.0), (5550, 0.0), (50276, 0.0), (8, 0.0), (342, 0.0), (6038, 0.0)], [(6778, 0.979), (15887, 0.019), (1777, 0.0), (38881, 0.0), (50276, 0.0), (40864, 0.0), (1383, 0.0), (17250, 0.0), (13, 0.0), (50275, 0.0)], [(21570, 0.998), (10381, 0.001), (611, 0.001), (36051, 0.0), (15, 0.0), (1383, 0.0), (31292, 0.0), (26184, 0.0), (427, 0.0), (50276, 0.0)], [(1383, 0.859), (13, 0.064), (15, 0.039), (40219, 0.021), (2464, 0.007), (28, 0.006), (4117, 0.002), (6038, 0.001), (285, 0.001), (313, 0.0)], [(686, 0.952), (346, 0.028), (32589, 0.019), (34912, 0.0), (15078, 0.0), (2634, 0.0), (17169, 0.0), (30225, 0.0), (14412, 0.0), (2802, 0.0)], [(510, 0.402), (2374, 0.224), (47, 0.146), (1147, 0.135), (688, 0.03), (25310, 0.009), (21756, 0.005), (7130, 0.004), (39, 0.004), (3, 0.004)], [(2567, 0.966), (1416, 0.012), (3565, 0.011), (806, 0.003), (13739, 0.002), (747, 0.001), (6487, 0.001), (7138, 0.001), (1655, 0.001), (33663, 0.0)], [(369, 0.651), (3395, 0.185), (15335, 0.078), (310, 0.05), (4391, 0.011), (556, 0.006), (19186, 0.003), (434, 0.002), (8671, 0.001), (4916, 0.001)], [(15335, 0.74), (11420, 0.071), (4907, 0.044), (19186, 0.03), (8927, 0.026), (11217, 0.01), (9288, 0.01), (840, 0.009), (27624, 0.009), (8523, 0.007)], [(4907, 0.869), (1929, 0.026), (1925, 0.025), (11217, 0.01), (2489, 0.009), (4391, 0.008), (27624, 0.008), (346, 0.005), (11420, 0.004), (4232, 0.003)], [(40864, 0.702), (346, 0.168), (347, 0.084), (41177, 0.015), (327, 0.009), (686, 0.008), (285, 0.005), (13, 0.004), (2634, 0.001), (275, 0.001)], [(13, 0.81), (327, 0.138), (275, 0.027), (3690, 0.016), (285, 0.002), (672, 0.002), (846, 0.001), (347, 0.001), (1383, 0.001), (432, 0.0)], [(3690, 0.977), (327, 0.018), (275, 0.002), (285, 0.001), (342, 0.0), (50276, 0.0), (347, 0.0), (846, 0.0), (533, 0.0), (1485, 0.0)], [(15, 0.912), (904, 0.057), (327, 0.016), (13, 0.013), (275, 0.001), (2464, 0.001), (285, 0.0), (1383, 0.0), (40219, 0.0), (8634, 0.0)], [(327, 0.987), (275, 0.006), (285, 0.002), (2552, 0.001), (347, 0.001), (50276, 0.0), (846, 0.0), (342, 0.0), (407, 0.0), (672, 0.0)], [(2552, 0.997), (3919, 0.001), (4247, 0.001), (7216, 0.0), (5080, 0.0), (3978, 0.0), (50276, 0.0), (4163, 0.0), (4162, 0.0), (4397, 0.0)], [(1884, 0.996), (4562, 0.002), (3285, 0.001), (13, 0.0), (15, 0.0), (3349, 0.0), (1384, 0.0), (1458, 0.0), (2030, 0.0), (884, 0.0)], [(13, 0.998), (15, 0.001), (1383, 0.0), (1157, 0.0), (904, 0.0), (394, 0.0), (273, 0.0), (275, 0.0), (4117, 0.0), (16609, 0.0)], [(16609, 0.987), (25197, 0.002), (43425, 0.002), (10333, 0.001), (6585, 0.001), (15750, 0.001), (50276, 0.001), (10226, 0.001), (15621, 0.0), (4332, 0.0)], [(1383, 0.956), (28, 0.015), (13, 0.01), (15, 0.009), (40219, 0.007), (285, 0.001), (2464, 0.001), (342, 0.0), (407, 0.0), (4117, 0.0)], [(686, 0.957), (346, 0.029), (32589, 0.013), (15078, 0.001), (2634, 0.0), (14412, 0.0), (30225, 0.0), (34912, 0.0), (17169, 0.0), (2802, 0.0)], [(47, 0.495), (510, 0.28), (688, 0.076), (1909, 0.039), (1147, 0.027), (7130, 0.018), (2374, 0.011), (14569, 0.01), (7542, 0.01), (3378, 0.003)], [(2804, 1.0), (13972, 0.0), (460, 0.0), (18579, 0.0), (366, 0.0), (8678, 0.0), (1758, 0.0), (1479, 0.0), (383, 0.0), (413, 0.0)], [(310, 0.347), (10169, 0.226), (369, 0.181), (556, 0.053), (34423, 0.028), (434, 0.024), (4390, 0.017), (13, 0.013), (1024, 0.012), (27924, 0.008)], [(253, 0.899), (1024, 0.042), (4390, 0.018), (581, 0.011), (247, 0.01), (2783, 0.003), (1533, 0.003), (1929, 0.002), (3063, 0.001), (21392, 0.001)], [(1533, 0.911), (6253, 0.062), (954, 0.015), (11762, 0.002), (1655, 0.002), (4283, 0.002), (4156, 0.002), (5962, 0.001), (1852, 0.0), (346, 0.0)], [(434, 0.783), (4479, 0.174), (457, 0.023), (686, 0.012), (6253, 0.003), (8, 0.002), (17719, 0.001), (65, 0.001), (14, 0.0), (256, 0.0)], [(6253, 0.98), (4283, 0.013), (954, 0.005), (5962, 0.001), (1852, 0.0), (6657, 0.0), (2791, 0.0), (2201, 0.0), (285, 0.0), (1180, 0.0)], [(29622, 0.937), (24122, 0.036), (11662, 0.005), (3174, 0.005), (11716, 0.004), (9678, 0.003), (9001, 0.002), (14281, 0.001), (7138, 0.001), (24451, 0.001)], [(273, 0.988), (285, 0.004), (323, 0.003), (13, 0.001), (1383, 0.001), (604, 0.001), (275, 0.0), (390, 0.0), (50276, 0.0), (327, 0.0)], [(24122, 0.998), (9001, 0.0), (9678, 0.0), (39749, 0.0), (3939, 0.0), (11916, 0.0), (3174, 0.0), (28802, 0.0), (622, 0.0), (27799, 0.0)], [(12682, 0.626), (3174, 0.366), (622, 0.002), (9001, 0.001), (285, 0.001), (9678, 0.001), (22756, 0.001), (16037, 0.001), (3580, 0.001), (6500, 0.0)], [(285, 0.922), (1383, 0.043), (13, 0.031), (342, 0.002), (28, 0.001), (15, 0.001), (313, 0.0), (708, 0.0), (275, 0.0), (347, 0.0)], [(622, 0.966), (9001, 0.005), (14234, 0.004), (310, 0.004), (24122, 0.003), (9678, 0.002), (6500, 0.002), (643, 0.001), (28234, 0.001), (556, 0.001)], [(28091, 0.998), (609, 0.002), (274, 0.0), (1560, 0.0), (613, 0.0), (77, 0.0), (4420, 0.0), (83, 0.0), (620, 0.0), (3623, 0.0)], [(13, 0.339), (1383, 0.309), (285, 0.306), (342, 0.028), (28, 0.009), (15, 0.005), (347, 0.001), (275, 0.001), (4117, 0.001), (313, 0.0)], [(285, 0.585), (342, 0.381), (347, 0.016), (247, 0.002), (2403, 0.002), (1690, 0.001), (2556, 0.001), (1907, 0.001), (534, 0.001), (275, 0.001)], [(247, 0.764), (2201, 0.12), (310, 0.045), (11662, 0.013), (581, 0.011), (671, 0.01), (253, 0.009), (556, 0.006), (352, 0.005), (16596, 0.003)], [(2201, 0.997), (11662, 0.002), (4283, 0.001), (1781, 0.0), (4156, 0.0), (11906, 0.0), (1534, 0.0), (2791, 0.0), (4471, 0.0), (2022, 0.0)], [(11662, 0.981), (9001, 0.008), (24320, 0.002), (9678, 0.001), (16596, 0.001), (14281, 0.001), (29622, 0.001), (10264, 0.001), (6500, 0.001), (275, 0.001)], [(273, 0.987), (1383, 0.006), (275, 0.002), (285, 0.001), (323, 0.001), (13, 0.001), (390, 0.0), (604, 0.0), (342, 0.0), (50276, 0.0)], [(9001, 0.98), (9678, 0.011), (643, 0.004), (6500, 0.002), (28802, 0.002), (84, 0.0), (24122, 0.0), (2710, 0.0), (50276, 0.0), (3580, 0.0)], [(6500, 0.996), (1383, 0.002), (285, 0.001), (14, 0.0), (3580, 0.0), (1298, 0.0), (28234, 0.0), (10229, 0.0), (13, 0.0), (622, 0.0)], [(1383, 0.694), (13, 0.174), (342, 0.084), (28, 0.02), (15, 0.014), (285, 0.008), (275, 0.001), (4117, 0.001), (313, 0.001), (326, 0.0)], [(686, 0.936), (346, 0.043), (32589, 0.017), (15078, 0.002), (34912, 0.0), (2634, 0.0), (14412, 0.0), (17169, 0.0), (30225, 0.0), (41000, 0.0)], [(47, 0.327), (688, 0.27), (510, 0.194), (1909, 0.053), (7130, 0.046), (1147, 0.037), (2374, 0.006), (3378, 0.005), (2214, 0.005), (27132, 0.004)], [(2804, 1.0), (13972, 0.0), (366, 0.0), (1479, 0.0), (18579, 0.0), (1758, 0.0), (466, 0.0), (8678, 0.0), (460, 0.0), (20592, 0.0)], [(34423, 0.24), (369, 0.188), (310, 0.177), (556, 0.123), (434, 0.063), (574, 0.038), (10169, 0.021), (671, 0.017), (17045, 0.012), (4390, 0.01)], [(1142, 0.943), (7418, 0.011), (1029, 0.01), (247, 0.008), (285, 0.008), (17812, 0.006), (2067, 0.003), (2201, 0.002), (4122, 0.002), (2710, 0.001)], [(1029, 0.921), (17812, 0.049), (973, 0.009), (11906, 0.003), (8530, 0.003), (4122, 0.003), (9001, 0.002), (4633, 0.002), (1755, 0.001), (5702, 0.001)], [(14, 0.988), (6222, 0.012), (14729, 0.0), (428, 0.0), (1268, 0.0), (23114, 0.0), (3045, 0.0), (48433, 0.0), (17045, 0.0), (19947, 0.0)], [(14729, 0.999), (34586, 0.0), (856, 0.0), (36505, 0.0), (6222, 0.0), (71, 0.0), (5251, 0.0), (15608, 0.0), (13382, 0.0), (4387, 0.0)], [(17812, 0.997), (9001, 0.001), (27799, 0.0), (6671, 0.0), (5702, 0.0), (285, 0.0), (13, 0.0), (24122, 0.0), (3394, 0.0), (9678, 0.0)], [(285, 0.916), (1383, 0.039), (13, 0.032), (1690, 0.004), (1475, 0.003), (11762, 0.001), (275, 0.001), (824, 0.001), (28, 0.001), (15, 0.0)], [(9001, 0.724), (6671, 0.242), (9678, 0.006), (8525, 0.004), (34423, 0.004), (556, 0.002), (17812, 0.002), (310, 0.002), (643, 0.001), (3394, 0.001)], [(6671, 0.994), (1383, 0.004), (13, 0.001), (2285, 0.0), (285, 0.0), (275, 0.0), (1690, 0.0), (5659, 0.0), (6038, 0.0), (3394, 0.0)], [(1475, 0.369), (1383, 0.275), (13, 0.23), (11762, 0.058), (285, 0.023), (275, 0.007), (15, 0.007), (1690, 0.006), (6038, 0.004), (2439, 0.004)], [(253, 1.0), (1533, 0.0), (13, 0.0), (1383, 0.0), (285, 0.0), (342, 0.0), (697, 0.0), (344, 0.0), (15, 0.0), (281, 0.0)], [(1533, 0.998), (20902, 0.002), (1383, 0.0), (3159, 0.0), (3645, 0.0), (11762, 0.0), (253, 0.0), (4156, 0.0), (2862, 0.0), (1475, 0.0)], [(1383, 0.578), (13, 0.338), (342, 0.029), (6038, 0.016), (28, 0.016), (285, 0.008), (15, 0.007), (1690, 0.003), (16445, 0.001), (313, 0.0)], [(686, 0.942), (346, 0.052), (32589, 0.003), (15078, 0.002), (2634, 0.0), (14412, 0.0), (17169, 0.0), (34912, 0.0), (20890, 0.0), (30225, 0.0)], [(47, 0.375), (688, 0.284), (510, 0.124), (1909, 0.091), (7130, 0.046), (1147, 0.019), (2374, 0.007), (2214, 0.006), (27132, 0.002), (938, 0.002)], [(2804, 1.0), (13972, 0.0), (8678, 0.0), (366, 0.0), (1479, 0.0), (466, 0.0), (18579, 0.0), (20592, 0.0), (460, 0.0), (587, 0.0)], [(310, 0.271), (369, 0.259), (556, 0.154), (17045, 0.065), (434, 0.043), (574, 0.04), (13, 0.025), (27532, 0.02), (671, 0.013), (6171, 0.011)], [(253, 0.38), (21392, 0.159), (581, 0.096), (17045, 0.087), (4390, 0.051), (247, 0.031), (671, 0.02), (4409, 0.018), (4122, 0.017), (7117, 0.011)], [(954, 0.731), (1533, 0.178), (6253, 0.01), (4585, 0.005), (854, 0.005), (2626, 0.004), (884, 0.004), (1852, 0.002), (608, 0.002), (1273, 0.002)], [(9865, 0.933), (14, 0.038), (4633, 0.01), (21392, 0.008), (4122, 0.003), (2791, 0.001), (8214, 0.001), (27576, 0.001), (7478, 0.0), (7561, 0.0)], [(7138, 0.968), (9001, 0.011), (4156, 0.005), (9678, 0.003), (41294, 0.002), (2190, 0.001), (2567, 0.001), (10567, 0.001), (1982, 0.001), (285, 0.001)], [(2190, 0.958), (275, 0.032), (13, 0.004), (273, 0.001), (15995, 0.001), (11762, 0.001), (323, 0.001), (285, 0.001), (342, 0.0), (1561, 0.0)], [(9001, 0.948), (9678, 0.028), (253, 0.014), (697, 0.003), (512, 0.001), (84, 0.001), (643, 0.001), (2201, 0.0), (4156, 0.0), (28802, 0.0)], [(9341, 0.839), (17739, 0.113), (2136, 0.019), (4413, 0.009), (14, 0.006), (1383, 0.003), (285, 0.002), (17057, 0.001), (6038, 0.001), (7138, 0.001)], [(6038, 0.448), (13, 0.391), (285, 0.043), (15, 0.032), (275, 0.023), (342, 0.019), (2464, 0.009), (1383, 0.009), (28, 0.004), (313, 0.004)], [(0, 0.996), (187, 0.003), (209, 0.0), (50276, 0.0), (50275, 0.0), (61, 0.0), (15, 0.0), (29, 0.0), (870, 0.0), (50274, 0.0)]], 'output_tokens': [5013, 47, 2804, 13, 3690, 15, 369, 11420, 327, 4247, 2030, 13, 17926, 13, 347, 346, 22036, 31641, 4006, 15000, 995, 407, 7641, 10427, 8592, 285, 6778, 21570, 1383, 686, 510, 2567, 369, 15335, 4907, 40864, 13, 3690, 15, 327, 2552, 1884, 13, 16609, 1383, 686, 47, 2804, 310, 253, 1533, 434, 6253, 29622, 273, 24122, 12682, 285, 622, 28091, 13, 285, 247, 2201, 11662, 273, 9001, 6500, 1383, 686, 47, 2804, 34423, 1142, 1029, 14, 14729, 17812, 285, 9001, 6671, 1475, 253, 1533, 1383, 686, 47, 2804, 310, 253, 954, 9865, 7138, 2190, 9001, 9341, 6038, 0]}\n",
      "\n",
      "-- calling extract model to get key piece of information from the Wikipedia article - company founding date\n",
      "-- slim-extract - founding date:  {'llm_response': {'founding_date': ['January 25, 1964']}, 'usage': {'input': 375, 'output': 13, 'total': 388, 'metric': 'tokens', 'processing_time': 2.611426591873169, 'type': 'dict'}, 'logits': [[(13961, 0.999), (10816, 0.0), (73, 0.0), (1087, 0.0), (12080, 0.0), (18256, 0.0), (10984, 0.0), (8656, 0.0), (14077, 0.0), (1342, 0.0)], [(71, 0.707), (14541, 0.241), (31456, 0.036), (41607, 0.013), (19431, 0.002), (49053, 0.001), (14692, 0.0), (23569, 0.0), (2337, 0.0), (28983, 0.0)], [(13802, 1.0), (857, 0.0), (2261, 0.0), (2995, 0.0), (23569, 0.0), (702, 0.0), (9631, 0.0), (1573, 0.0), (662, 0.0), (23144, 0.0)], [(64, 1.0), (14, 0.0), (876, 0.0), (3333, 0.0), (18914, 0.0), (795, 0.0), (4414, 0.0), (5295, 0.0), (15, 0.0), (6038, 0.0)], [(2754, 1.0), (24275, 0.0), (2203, 0.0), (1201, 0.0), (1590, 0.0), (14151, 0.0), (7791, 0.0), (36377, 0.0), (2913, 0.0), (25610, 0.0)], [(5295, 0.998), (47499, 0.002), (64, 0.0), (8, 0.0), (6038, 0.0), (27, 0.0), (876, 0.0), (1381, 0.0), (22426, 0.0), (2464, 0.0)], [(14412, 0.992), (15640, 0.006), (544, 0.001), (8168, 0.001), (5013, 0.0), (686, 0.0), (46912, 0.0), (12196, 0.0), (24345, 0.0), (27428, 0.0)], [(22423, 0.941), (6791, 0.029), (24099, 0.006), (14060, 0.005), (19591, 0.002), (23375, 0.002), (20443, 0.001), (1099, 0.001), (18489, 0.001), (29639, 0.001)], [(2030, 0.974), (13, 0.015), (3436, 0.002), (2164, 0.001), (3435, 0.001), (3349, 0.001), (575, 0.001), (50276, 0.001), (337, 0.0), (3285, 0.0)], [(13, 0.998), (1157, 0.001), (15, 0.0), (1383, 0.0), (428, 0.0), (394, 0.0), (904, 0.0), (4117, 0.0), (2464, 0.0), (14, 0.0)], [(17926, 0.958), (9354, 0.011), (6157, 0.007), (29639, 0.004), (4059, 0.003), (12459, 0.003), (1384, 0.002), (16648, 0.001), (19213, 0.001), (8441, 0.001)], [(6038, 0.96), (2464, 0.035), (13, 0.001), (13995, 0.001), (1383, 0.0), (8, 0.0), (313, 0.0), (428, 0.0), (15, 0.0), (3401, 0.0)], [(94, 0.999), (0, 0.001), (748, 0.0), (62, 0.0), (13995, 0.0), (870, 0.0), (14412, 0.0), (187, 0.0), (2311, 0.0), (20499, 0.0)], [(0, 0.999), (187, 0.001), (209, 0.0), (50276, 0.0), (50275, 0.0), (50274, 0.0), (50273, 0.0), (1852, 0.0), (50269, 0.0), (50272, 0.0)]], 'output_tokens': [46912, 71, 13802, 64, 2754, 5295, 14412, 22423, 2030, 13, 17926, 6038, 94, 0]}\n",
      "\n",
      "-- calling extract model to get a short company business\n",
      "-- slim-extract - response:  {'llm_response': {'company_description': ['Nike Inc. is the worlds largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment.']}, 'usage': {'input': 375, 'output': 33, 'total': 408, 'metric': 'tokens', 'processing_time': 4.862472057342529, 'type': 'dict', 'remediation': True}, 'logits': [[(13961, 0.999), (10816, 0.0), (73, 0.0), (1087, 0.0), (12080, 0.0), (18256, 0.0), (10984, 0.0), (8656, 0.0), (14077, 0.0), (1342, 0.0)], [(25610, 1.0), (25590, 0.0), (32729, 0.0), (10008, 0.0), (10816, 0.0), (1590, 0.0), (14267, 0.0), (38885, 0.0), (4674, 0.0), (46723, 0.0)], [(64, 1.0), (876, 0.0), (5295, 0.0), (14, 0.0), (4414, 0.0), (3333, 0.0), (11185, 0.0), (27, 0.0), (15, 0.0), (47499, 0.0)], [(10008, 1.0), (3229, 0.0), (1590, 0.0), (12898, 0.0), (28692, 0.0), (39930, 0.0), (49027, 0.0), (20119, 0.0), (39990, 0.0), (14729, 0.0)], [(5295, 0.999), (47499, 0.001), (64, 0.0), (27, 0.0), (1381, 0.0), (6038, 0.0), (8, 0.0), (876, 0.0), (5456, 0.0), (5013, 0.0)], [(14412, 0.913), (15640, 0.083), (544, 0.003), (686, 0.0), (5550, 0.0), (346, 0.0), (12196, 0.0), (5013, 0.0), (8168, 0.0), (46912, 0.0)], [(47, 0.92), (510, 0.019), (13652, 0.017), (3, 0.008), (32088, 0.005), (46912, 0.003), (9819, 0.003), (7130, 0.002), (6267, 0.001), (8, 0.001)], [(2804, 0.999), (6541, 0.0), (460, 0.0), (6327, 0.0), (739, 0.0), (587, 0.0), (383, 0.0), (413, 0.0), (13972, 0.0), (15, 0.0)], [(13, 0.779), (310, 0.201), (3690, 0.008), (313, 0.004), (428, 0.002), (369, 0.001), (5550, 0.001), (2033, 0.001), (50276, 0.0), (556, 0.0)], [(3690, 0.986), (310, 0.005), (253, 0.002), (247, 0.001), (11420, 0.001), (11217, 0.001), (271, 0.0), (390, 0.0), (50276, 0.0), (21346, 0.0)], [(15, 0.874), (904, 0.07), (310, 0.02), (313, 0.009), (2464, 0.008), (13, 0.008), (14517, 0.004), (40219, 0.002), (12567, 0.001), (4880, 0.001)], [(310, 0.642), (313, 0.305), (5550, 0.019), (50276, 0.014), (369, 0.007), (428, 0.002), (390, 0.001), (50275, 0.001), (1680, 0.001), (12196, 0.001)], [(253, 0.443), (247, 0.286), (271, 0.245), (581, 0.013), (1533, 0.004), (2448, 0.002), (4390, 0.001), (2783, 0.001), (1929, 0.0), (7117, 0.0)], [(1533, 0.913), (954, 0.037), (6253, 0.036), (11762, 0.003), (4283, 0.002), (4156, 0.001), (530, 0.001), (2448, 0.001), (5962, 0.0), (3645, 0.0)], [(434, 0.704), (4479, 0.241), (457, 0.022), (686, 0.013), (6253, 0.006), (61, 0.006), (17719, 0.002), (8, 0.002), (65, 0.001), (6267, 0.001)], [(6253, 0.981), (954, 0.011), (4283, 0.007), (5962, 0.001), (6657, 0.0), (1852, 0.0), (1180, 0.0), (1682, 0.0), (1273, 0.0), (1755, 0.0)], [(29622, 0.926), (11662, 0.022), (24122, 0.016), (36631, 0.007), (11716, 0.006), (9001, 0.005), (622, 0.003), (24451, 0.002), (9678, 0.002), (2567, 0.001)], [(273, 0.993), (285, 0.002), (13, 0.001), (323, 0.001), (50276, 0.0), (16, 0.0), (604, 0.0), (390, 0.0), (61, 0.0), (313, 0.0)], [(24122, 0.995), (9001, 0.002), (9678, 0.001), (622, 0.001), (3939, 0.0), (27799, 0.0), (3174, 0.0), (10567, 0.0), (28802, 0.0), (50276, 0.0)], [(12682, 0.876), (3174, 0.104), (622, 0.005), (9001, 0.004), (3580, 0.003), (10229, 0.002), (285, 0.001), (8251, 0.001), (22756, 0.001), (6500, 0.001)], [(285, 0.96), (13, 0.03), (1383, 0.002), (2464, 0.002), (708, 0.001), (40219, 0.001), (15, 0.001), (6038, 0.0), (4880, 0.0), (8239, 0.0)], [(622, 0.981), (9001, 0.004), (14234, 0.002), (310, 0.002), (24122, 0.002), (7138, 0.001), (3580, 0.001), (643, 0.001), (10015, 0.001), (28234, 0.001)], [(28091, 0.998), (609, 0.002), (274, 0.0), (1560, 0.0), (83, 0.0), (4420, 0.0), (613, 0.0), (250, 0.0), (3623, 0.0), (254, 0.0)], [(13, 0.449), (285, 0.231), (2464, 0.218), (15, 0.033), (40219, 0.021), (6038, 0.013), (1383, 0.012), (342, 0.009), (8239, 0.004), (4880, 0.004)], [(285, 0.739), (342, 0.209), (347, 0.027), (247, 0.008), (534, 0.001), (1481, 0.001), (275, 0.001), (1907, 0.001), (1690, 0.001), (310, 0.001)], [(247, 0.848), (310, 0.079), (581, 0.018), (2201, 0.011), (253, 0.011), (671, 0.009), (11662, 0.005), (556, 0.003), (352, 0.002), (271, 0.002)], [(2201, 0.989), (11662, 0.006), (4283, 0.002), (1781, 0.001), (1534, 0.0), (24320, 0.0), (30263, 0.0), (4156, 0.0), (1755, 0.0), (5020, 0.0)], [(11662, 0.968), (9001, 0.009), (24320, 0.006), (29622, 0.005), (16596, 0.003), (14281, 0.002), (1616, 0.001), (10264, 0.001), (11716, 0.001), (9678, 0.001)], [(273, 0.992), (275, 0.001), (323, 0.001), (13, 0.001), (285, 0.001), (15, 0.0), (50276, 0.0), (2464, 0.0), (6038, 0.0), (16, 0.0)], [(9001, 0.969), (643, 0.011), (9678, 0.005), (6500, 0.004), (3580, 0.002), (50276, 0.001), (2710, 0.001), (28802, 0.001), (24122, 0.0), (273, 0.0)], [(6500, 0.993), (14, 0.002), (3580, 0.001), (285, 0.001), (1298, 0.001), (10229, 0.001), (30787, 0.0), (28234, 0.0), (2464, 0.0), (13, 0.0)], [(2464, 0.585), (13, 0.121), (40219, 0.092), (15, 0.085), (342, 0.05), (8239, 0.024), (1383, 0.013), (285, 0.009), (4880, 0.009), (6038, 0.006)], [(18095, 1.0), (12084, 0.0), (3291, 0.0), (94, 0.0), (2311, 0.0), (62, 0.0), (9102, 0.0), (44479, 0.0), (599, 0.0), (20499, 0.0)], [(0, 0.998), (187, 0.001), (209, 0.0), (50276, 0.0), (94, 0.0), (50275, 0.0), (50274, 0.0), (1852, 0.0), (50273, 0.0), (551, 0.0)]], 'output_tokens': [46912, 25610, 64, 10008, 5295, 14412, 47, 2804, 13, 3690, 15, 310, 253, 1533, 434, 6253, 29622, 273, 24122, 12682, 285, 622, 28091, 13, 285, 247, 2201, 11662, 273, 9001, 6500, 2464, 18095, 0]}\n",
      "\n",
      "-- asking a question directly to the Wikipedia article about the business\n",
      "-- bling-answer model - response:  {'llm_response': \" Nike, Inc. is the world's largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment.\", 'usage': {'input': 377, 'output': 24, 'total': 401, 'metric': 'tokens', 'processing_time': 2.866205930709839}}\n",
      "\n",
      "-- asking a question about the origin of the company's name\n",
      "-- bling-answer model - response:  {'llm_response': ' Nike, the Greek goddess of victory.', 'usage': {'input': 378, 'output': 8, 'total': 386, 'metric': 'tokens', 'processing_time': 2.0896804332733154}}\n",
      "\n",
      "-- asking a question about the company's products\n",
      "-- bling-answer model - response:  {'llm_response': ' •Nike,\\r\\n•Nike Golf,\\r\\n•Nike Pro,\\r\\n•Nike+,\\r\\n•Nike Blazers,\\r\\n•Air Force 1,\\r\\n•Nike Dunk,\\r\\n•Air Max,\\r\\n•Foamposite,\\r\\n•Nike Skateboarding,\\r\\n•Nike CR7,\\r\\n•Bauer Hockey,\\r\\n•Cole Haan,\\r\\n•Umbro, and', 'usage': {'input': 373, 'output': 100, 'total': 473, 'metric': 'tokens', 'processing_time': 4.781738519668579}}\n",
      "\n",
      "\n",
      "Step 4 - Completed Research - Summary Output\n",
      "\n",
      "research summary:  {'stock_ticker': 'NYSE:NKE', 'company_name': 'NIKE, Inc.', 'total_revenues': '$12.4 billion', 'restructuring_charges': '$340 million', 'digital_growth': 'NIKE Brand Digital sales decreased 3% on a reported basis and 4% on a currency-neutral basis.', 'ceo_comment': 'NIKE is making the necessary adjustments to drive NIKEs next chapter of growth.', 'quarter_end_date': 'February 29, 2024', 'current_stock_price': 75.24, 'high_ltm': 123.39, 'low_ltm': 74.29, 'trailing_pe': 20.171581, 'forward_pe': 21.01676, 'volume': 15777904, 'market_cap': 113564246016, 'price_to_sales': 2.2110558, 'revenue_growth': -0.017, 'ebitda': 7164333056, 'gross_margin': 0.4456, 'currency': 'USD', 'sector': 'Consumer Cyclical', 'website': 'https://www.nike.com', 'industry': 'Footwear & Accessories', 'officers': [('Mr. Mark G. Parker', 'Executive Chairman', 67, 7638047), ('Mr. John J. Donahoe II', 'President, CEO & Director', 62, 12322059), ('Mr. Matthew  Friend', 'Executive VP & CFO', 45, 3661404), (\"Ms. Heidi  O'Neill\", 'President of Consumer, Product & Brand', 57, 3690250), ('Mr. Philip H. Knight', 'Co-Founder & Chairman Emeritus', 85, 3069594), ('Ms. Johanna  Nielsen', 'VP of Controlling & Principal Accounting Officer', 45, 'pay-NA'), ('Dr. Muge Erdirik Dogan', 'Chief Technology Officer', 'age-NA', 'pay-NA'), ('Mr. Paul  Trussell C.F.A.', 'VP of Investor Relations & Strategic Finance', 'age-NA', 'pay-NA'), ('Ms. Ann M. Miller', 'Executive VP & Chief Legal Officer', 48, 'pay-NA'), ('Mr. KeJuan  Wilkins', 'Executive VP & Chief Communications Officer', 'age-NA', 'pay-NA')], 'summary': ['Nike Inc. was founded on January 25 1964 as ', 'by Bill Bowerman and Phil Knight', 'The company was officially named Nike Inc. on May 30 1971', 'Nike is the worlds largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment', 'Nike sponsors many high-profile athletes and sports teams around the world', 'Nike is the most valuable brand among sports businesses'], 'founding_date': 'January 25, 1964', 'company_description': 'Nike Inc. is the worlds largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment.', 'business_overview': \" Nike, Inc. is the world's largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment.\", 'origin_of_name': ' Nike, the Greek goddess of victory.', 'products': ' •Nike,\\r\\n•Nike Golf,\\r\\n•Nike Pro,\\r\\n•Nike+,\\r\\n•Nike Blazers,\\r\\n•Air Force 1,\\r\\n•Nike Dunk,\\r\\n•Air Max,\\r\\n•Foamposite,\\r\\n•Nike Skateboarding,\\r\\n•Nike CR7,\\r\\n•Bauer Hockey,\\r\\n•Cole Haan,\\r\\n•Umbro, and'}\n",
      "\t\t -- 1 - \t - stock_ticker              - NYSE:NKE                                \n",
      "\t\t -- 2 - \t - company_name              - NIKE, Inc.                              \n",
      "\t\t -- 3 - \t - total_revenues            - $12.4 billion                           \n",
      "\t\t -- 4 - \t - restructuring_charges     - $340 million                            \n",
      "\t\t -- 5 - \t - digital_growth            - NIKE Brand Digital sales decreased 3% on a reported basis and 4% on a currency-neutral basis.\n",
      "\t\t -- 6 - \t - ceo_comment               - NIKE is making the necessary adjustments to drive NIKEs next chapter of growth.\n",
      "\t\t -- 7 - \t - quarter_end_date          - February 29, 2024                       \n",
      "\t\t -- 8 - \t - current_stock_price       - 75.24                                   \n",
      "\t\t -- 9 - \t - high_ltm                  - 123.39                                  \n",
      "\t\t -- 10 - \t - low_ltm                   - 74.29                                   \n",
      "\t\t -- 11 - \t - trailing_pe               - 20.171581                               \n",
      "\t\t -- 12 - \t - forward_pe                - 21.01676                                \n",
      "\t\t -- 13 - \t - volume                    - 15777904                                \n",
      "\t\t -- 14 - \t - market_cap                - 113564246016                            \n",
      "\t\t -- 15 - \t - price_to_sales            - 2.2110558                               \n",
      "\t\t -- 16 - \t - revenue_growth            - -0.017                                  \n",
      "\t\t -- 17 - \t - ebitda                    - 7164333056                              \n",
      "\t\t -- 18 - \t - gross_margin              - 0.4456                                  \n",
      "\t\t -- 19 - \t - currency                  - USD                                     \n",
      "\t\t -- 20 - \t - sector                    - Consumer Cyclical                       \n",
      "\t\t -- 21 - \t - website                   - https://www.nike.com                    \n",
      "\t\t -- 22 - \t - industry                  - Footwear & Accessories                  \n",
      "\t\t -- 23 - \t - officers                  - [('Mr. Mark G. Parker', 'Executive Chairman', 67, 7638047), ('Mr. John J. Donahoe II', 'President, CEO & Director', 62, 12322059), ('Mr. Matthew  Friend', 'Executive VP & CFO', 45, 3661404), (\"Ms. Heidi  O'Neill\", 'President of Consumer, Product & Brand', 57, 3690250), ('Mr. Philip H. Knight', 'Co-Founder & Chairman Emeritus', 85, 3069594), ('Ms. Johanna  Nielsen', 'VP of Controlling & Principal Accounting Officer', 45, 'pay-NA'), ('Dr. Muge Erdirik Dogan', 'Chief Technology Officer', 'age-NA', 'pay-NA'), ('Mr. Paul  Trussell C.F.A.', 'VP of Investor Relations & Strategic Finance', 'age-NA', 'pay-NA'), ('Ms. Ann M. Miller', 'Executive VP & Chief Legal Officer', 48, 'pay-NA'), ('Mr. KeJuan  Wilkins', 'Executive VP & Chief Communications Officer', 'age-NA', 'pay-NA')]\n",
      "\t\t -- 24 - \t - summary                   - ['Nike Inc. was founded on January 25 1964 as ', 'by Bill Bowerman and Phil Knight', 'The company was officially named Nike Inc. on May 30 1971', 'Nike is the worlds largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment', 'Nike sponsors many high-profile athletes and sports teams around the world', 'Nike is the most valuable brand among sports businesses']\n",
      "\t\t -- 25 - \t - founding_date             - January 25, 1964                        \n",
      "\t\t -- 26 - \t - company_description       - Nike Inc. is the worlds largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment.\n",
      "\t\t -- 27 - \t - business_overview         -  Nike, Inc. is the world's largest supplier of athletic shoes and apparel and a major manufacturer of sports equipment.\n",
      "\t\t -- 28 - \t - origin_of_name            -  Nike, the Greek goddess of victory.    \n",
      "\t\t -- 29 - \t - products                  -  •Nike,•Nike Golf,•Nike Pro,•Nike+,•Nike Blazers,•Air Force 1,•Nike Dunk,•Air Max,•Foamposite,•Nike Skateboarding,•Nike CR7,•Bauer Hockey,•Cole Haan,•Umbro, and\n"
     ]
    }
   ],
   "source": [
    "from llmware.web_services import YFinance\n",
    "from llmware.models import ModelCatalog\n",
    "from llmware.parsers import WikiParser\n",
    "\n",
    "from importlib import util\n",
    "if not util.find_spec(\"yfinance\"):\n",
    "    print(\"\\nto run this example, you need to install yfinance first, e.g., pip3 install yfinance\")\n",
    "\n",
    "# our input - financial news article\n",
    "\n",
    "text=(\"BEAVERTON, Ore.--(BUSINESS WIRE)--NIKE, Inc. (NYSE:NKE) today reported fiscal 2024 financial results for its \"\n",
    "      \"third quarter ended February 29, 2024.) “We are making the necessary adjustments to drive NIKE’s next chapter \"\n",
    "      \"of growth Post this Third quarter revenues were slightly up on both a reported and currency-neutral basis* \"\n",
    "      \"at $12.4 billion NIKE Direct revenues were $5.4 billion, slightly up on a reported and currency-neutral basis \"\n",
    "      \"NIKE Brand Digital sales decreased 3 percent on a reported basis and 4 percent on a currency-neutral basis \"\n",
    "      \"Wholesale revenues were $6.6 billion, up 3 percent on a reported and currency-neutral basis Gross margin \"\n",
    "      \"increased 150 basis points to 44.8 percent, including a detriment of 50 basis points due to restructuring charges \"\n",
    "      \"Selling and administrative expense increased 7 percent to $4.2 billion, including $340 million of restructuring \"\n",
    "      \"charges Diluted earnings per share was $0.77, including $0.21 of restructuring charges. Excluding these \"\n",
    "      \"charges, Diluted earnings per share would have been $0.98* “We are making the necessary adjustments to \"\n",
    "      \"drive NIKE’s next chapter of growth,” said John Donahoe, President & CEO, NIKE, Inc. “We’re encouraged by \"\n",
    "      \"the progress we’ve seen, as we build a multiyear cycle of new innovation, sharpen our brand storytelling and \"\n",
    "      \"work with our wholesale partners to elevate and grow the marketplace.\")\n",
    "\n",
    "\n",
    "def research_example1():\n",
    "\n",
    "    \"\"\" End-to-end example generating 30 output key:value pairs \"\"\"\n",
    "\n",
    "    # load three models in this example\n",
    "\n",
    "    model = ModelCatalog().load_model(\"slim-extract-tool\", temperature=0.0, sample=False)\n",
    "    model2 = ModelCatalog().load_model(\"slim-summary-tool\", sample=False,temperature=0.0,max_output=200)\n",
    "    model3 = ModelCatalog().load_model(\"bling-stablelm-3b-tool\", sample=False, temperature=0.0)\n",
    "\n",
    "    research_summary = {}\n",
    "\n",
    "    #   extract information from the source materials\n",
    "\n",
    "    extract_keys = [\"stock ticker\", \"company name\",\n",
    "                    \"total revenues\", \"restructuring charges\",\n",
    "                    \"digital growth\", \"ceo comment\", \"quarter end date\"]\n",
    "\n",
    "    print(\"\\nStep 1 - extract information from source text\\n\")\n",
    "\n",
    "    for keys in extract_keys:\n",
    "        response = model.function_call(text,params=[keys])\n",
    "        dict_keys = keys.replace(\" \", \"_\")\n",
    "        print(f\"update: extracting - {keys} - {response['llm_response']}\")\n",
    "        if dict_keys in response[\"llm_response\"]:\n",
    "            value = response[\"llm_response\"][dict_keys][0]\n",
    "            research_summary.update({dict_keys: value})\n",
    "        else:\n",
    "            print(\"could not find look up key successfully - \", response[\"llm_response\"])\n",
    "\n",
    "    #   secondary lookups using extracted information\n",
    "\n",
    "    print(\"\\nStep 2 - use extracted stock ticker in web service lookup to YFinance\\n\")\n",
    "\n",
    "    if \"stock_ticker\" in research_summary:\n",
    "        ticker = research_summary[\"stock_ticker\"]\n",
    "        # a little kludge related to yfinance api\n",
    "        ticker_core = ticker.split(\":\")[-1]\n",
    "\n",
    "        yf = YFinance().get_stock_summary(ticker=ticker_core)\n",
    "        print(\"yahoo finance stock info: \", yf)\n",
    "\n",
    "        research_summary.update({\"current_stock_price\": yf[\"currentPrice\"]})\n",
    "        research_summary.update({\"high_ltm\": yf[\"fiftyTwoWeekHigh\"]})\n",
    "        research_summary.update({\"low_ltm\": yf[\"fiftyTwoWeekLow\"]})\n",
    "        research_summary.update({\"trailing_pe\": yf[\"trailingPE\"]})\n",
    "        research_summary.update({\"forward_pe\": yf[\"forwardPE\"]})\n",
    "        research_summary.update({\"volume\": yf[\"volume\"]})\n",
    "\n",
    "        yf2 = YFinance().get_financial_summary(ticker=ticker_core)\n",
    "        print(\"yahoo finance fin info - \", yf2)\n",
    "        research_summary.update({\"market_cap\": yf2[\"marketCap\"]})\n",
    "        research_summary.update({\"price_to_sales\": yf2[\"priceToSalesTrailing12Months\"]})\n",
    "        research_summary.update({\"revenue_growth\": yf2[\"revenueGrowth\"]})\n",
    "        research_summary.update({\"ebitda\": yf2[\"ebitda\"]})\n",
    "        research_summary.update({\"gross_margin\": yf2[\"grossMargins\"]})\n",
    "        research_summary.update({\"currency\": yf2[\"currency\"]})\n",
    "\n",
    "        yf3 = YFinance().get_company_summary(ticker=ticker_core)\n",
    "        print(\"yahoo finance company info - \", yf3)\n",
    "        research_summary.update({\"sector\": yf3[\"sector\"]})\n",
    "        research_summary.update({\"website\": yf3[\"website\"]})\n",
    "        research_summary.update({\"industry\": yf3[\"industry\"]})\n",
    "        #research_summary.update({\"employees\": yf3[\"fullTimeEmployees\"]})\n",
    "\n",
    "        execs = []\n",
    "        if \"companyOfficers\" in yf3:\n",
    "            for entries in yf3[\"companyOfficers\"]:\n",
    "                if \"totalPay\" in entries:\n",
    "                    pay = entries[\"totalPay\"]\n",
    "                else:\n",
    "                    pay = \"pay-NA\"\n",
    "\n",
    "                if \"age\" in entries:\n",
    "                    age = entries[\"age\"]\n",
    "                else:\n",
    "                    age = \"age-NA\"\n",
    "\n",
    "                execs.append((entries[\"name\"], entries[\"title\"], age, pay))\n",
    "        research_summary.update({\"officers\": execs})\n",
    "\n",
    "    print(\"\\nStep 3 - use extracted company name to lookup in Wikipedia web service - and add background data\\n\")\n",
    "\n",
    "    if \"company_name\" in research_summary:\n",
    "\n",
    "        company_name = research_summary[\"company_name\"]\n",
    "        output = WikiParser().add_wiki_topic(company_name, target_results=1)\n",
    "\n",
    "        #   get company summary\n",
    "        company_overview = \"\"\n",
    "        for i, blocks in enumerate(output[\"blocks\"]):\n",
    "            if i < 3:\n",
    "              company_overview += blocks[\"text\"]\n",
    "\n",
    "        # call summary model to summarize\n",
    "        print(\"-- calling summary model to summarize the first part of the Wikipedia article\")\n",
    "        summary = model2.function_call(company_overview, params=[\"company history (5)\"])\n",
    "        print(\"-- slim-summary - summary (5 points): \", summary)\n",
    "\n",
    "        research_summary.update({\"summary\": summary[\"llm_response\"]})\n",
    "\n",
    "        #  get founding date\n",
    "        print(\"\\n-- calling extract model to get key piece of information from the Wikipedia article - company founding date\")\n",
    "        response = model.function_call(company_overview, params=[\"founding date\"])\n",
    "        print(\"-- slim-extract - founding date: \", response)\n",
    "\n",
    "        research_summary.update({\"founding_date\": response[\"llm_response\"][\"founding_date\"][0]})\n",
    "\n",
    "        print(\"\\n-- calling extract model to get a short company business\")\n",
    "        response = model.function_call(company_overview, params=[\"company description\"])\n",
    "        print(\"-- slim-extract - response: \", response)\n",
    "        research_summary.update({\"company_description\": response[\"llm_response\"][\"company_description\"][0]})\n",
    "\n",
    "        #     ask other questions directly\n",
    "        print(\"\\n-- asking a question directly to the Wikipedia article about the business\")\n",
    "        response = model3.inference(\"What is an overview of company's business?\", add_context=company_overview)\n",
    "        print(\"-- bling-answer model - response: \", response)\n",
    "        research_summary.update({\"business_overview\": response[\"llm_response\"] })\n",
    "\n",
    "        print(\"\\n-- asking a question about the origin of the company's name\")\n",
    "        response = model3.inference(\"What is the origin of the company's name?\", add_context=company_overview)\n",
    "        print(\"-- bling-answer model - response: \", response)\n",
    "        research_summary.update({\"origin_of_name\": response[\"llm_response\"]})\n",
    "\n",
    "        print(\"\\n-- asking a question about the company's products\")\n",
    "        response = model3.inference(\"What are the product names\", add_context=company_overview)\n",
    "        print(\"-- bling-answer model - response: \", response)\n",
    "        research_summary.update({\"products\": response[\"llm_response\"]})\n",
    "\n",
    "    print(\"\\n\\nStep 4 - Completed Research - Summary Output\\n\")\n",
    "    print(\"research summary: \", research_summary)\n",
    "\n",
    "    item_counter = 1\n",
    "\n",
    "    for keys, values in research_summary.items():\n",
    "        if isinstance(values, str):\n",
    "\n",
    "            values = values.replace(\"\\n\", \"\")\n",
    "            values = values.replace(\"\\r\", \"\")\n",
    "            values = values.replace(\"\\t\", \"\")\n",
    "\n",
    "        print(f\"\\t\\t -- {item_counter} - \\t - {keys.ljust(25)} - {str(values).ljust(40)}\")\n",
    "        item_counter += 1\n",
    "\n",
    "    return research_summary\n",
    "\n",
    "\n",
    "if __name__ == \"__main__\":\n",
    "\n",
    "    research_example1()\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n"
   ]
  }
 ],
 "metadata": {
  "accelerator": "GPU",
  "colab": {
   "gpuType": "T4",
   "provenance": []
  },
  "kernelspec": {
   "display_name": "Python 3",
   "name": "python3"
  },
  "language_info": {
   "name": "python"
  },
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "02b9d8c1cd154c828d7307b4b056b703": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "02d42d1c0d104a849c09c14a14ddd774": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_6262dbdd76f5406d977c035a9747f6f8",
      "placeholder": "​",
      "style": "IPY_MODEL_cd294ad0b5c14af59be1106700179200",
      "value": "Fetching 4 files: 100%"
     }
    },
    "02ff0f346ade4f7190d158598916bdf1": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "0a2d8a7481604e5ea53b3353ed96a8b4": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "0c975ae83ad94f259b5b9e0b76fbb2a9": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "0d155d9516104c72bb8047e53aa3ae2f": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "0ddc467890d74624a5c6c731121dc52c": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "0e518c2dfd6247c0b4db11b93404630b": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "14fd6f274e3d4c609c46de517184c0d1": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "19afff5f83c04aea95de1828c2c50690": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "1f2909f9240345ed9ed892f24c57a42f": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "FloatProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "FloatProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "success",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_57778bdaee4b47038ed72c41968e25e9",
      "max": 246836,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_4517b4a70120428c934dd9f1647a107d",
      "value": 246836
     }
    },
    "21e242b1386147e8a2f7b78113e5bd5b": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "227a70e7abdf4a34b796e110848b089e": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "FloatProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "FloatProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "success",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_713b2d8c0681493c95196f4d56851ef7",
      "max": 1581,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_02b9d8c1cd154c828d7307b4b056b703",
      "value": 1581
     }
    },
    "2a5570ef8bbd4d9cbc965e1a1872daa0": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HBoxModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HBoxModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HBoxView",
      "box_style": "",
      "children": [
       "IPY_MODEL_02d42d1c0d104a849c09c14a14ddd774",
       "IPY_MODEL_42fb8aaca8114edaba0853c28741e199",
       "IPY_MODEL_332c64b2fead4a2c8d8f65690d74a22e"
      ],
      "layout": "IPY_MODEL_a750d844c86148bfb5b39c34b26b42a3"
     }
    },
    "2b134ea124b64b838f7ba7b9f461a26b": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_0e518c2dfd6247c0b4db11b93404630b",
      "placeholder": "​",
      "style": "IPY_MODEL_0ddc467890d74624a5c6c731121dc52c",
      "value": "config.json: 100%"
     }
    },
    "332c64b2fead4a2c8d8f65690d74a22e": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_bac1b3f941c84acba980a62395981e00",
      "placeholder": "​",
      "style": "IPY_MODEL_e413397fb74942158c9fe27b3a2dc3cc",
      "value": " 4/4 [00:11&lt;00:00,  4.22s/it]"
     }
    },
    "403a012747b44a6fbb5b570bf98d5a71": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HBoxModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HBoxModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HBoxView",
      "box_style": "",
      "children": [
       "IPY_MODEL_425e9c03414d4d62864dbe20af462e89",
       "IPY_MODEL_227a70e7abdf4a34b796e110848b089e",
       "IPY_MODEL_e189c705be104b6e8f480d62ab16fde0"
      ],
      "layout": "IPY_MODEL_0c975ae83ad94f259b5b9e0b76fbb2a9"
     }
    },
    "425e9c03414d4d62864dbe20af462e89": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_9d06a33c549a4199b4af3f1f48ff5fd1",
      "placeholder": "​",
      "style": "IPY_MODEL_8004072db97e460f83503c899fac9a01",
      "value": "README.md: 100%"
     }
    },
    "42fb8aaca8114edaba0853c28741e199": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "FloatProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "FloatProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "success",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_02ff0f346ade4f7190d158598916bdf1",
      "max": 4,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_e3533899a9d34bed9669d72c74f28933",
      "value": 4
     }
    },
    "4517b4a70120428c934dd9f1647a107d": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "4e0a1748248843d8978f6e224a09894f": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "FloatProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "FloatProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "success",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_0d155d9516104c72bb8047e53aa3ae2f",
      "max": 1708595168,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_ef74d1ac40d44268b6930a456e1a1fc4",
      "value": 1708595168
     }
    },
    "57778bdaee4b47038ed72c41968e25e9": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "6262dbdd76f5406d977c035a9747f6f8": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "713b2d8c0681493c95196f4d56851ef7": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "72a003a867dd44e2aad1521b8bf20da3": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "7f41c49ce2ff417e8db0e178ae70e457": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_21e242b1386147e8a2f7b78113e5bd5b",
      "placeholder": "​",
      "style": "IPY_MODEL_80c197dbbc114735b9d62f0236d534da",
      "value": " 1.71G/1.71G [00:11&lt;00:00, 50.0MB/s]"
     }
    },
    "8004072db97e460f83503c899fac9a01": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "80c197dbbc114735b9d62f0236d534da": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "8410ee6ef7c34ef7a8d2c94c78d8f95a": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "853f66999986457cb1d52d8622f02cb8": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_ee4554c9acf749e2b6ccb81685277cac",
      "placeholder": "​",
      "style": "IPY_MODEL_89a269f8b10e4db6a7d22cfb59797b53",
      "value": "bling-stablelm.gguf: 100%"
     }
    },
    "89a269f8b10e4db6a7d22cfb59797b53": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "92b2eb8c11a548b7b4d0e09f8a6e6802": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HBoxModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HBoxModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HBoxView",
      "box_style": "",
      "children": [
       "IPY_MODEL_2b134ea124b64b838f7ba7b9f461a26b",
       "IPY_MODEL_1f2909f9240345ed9ed892f24c57a42f",
       "IPY_MODEL_bb6b60b1ac6841708c0bd7497dbd2976"
      ],
      "layout": "IPY_MODEL_b8d4e49b68dd48a49072794539d822fc"
     }
    },
    "97d5361038274f15aaec50e9736f96ef": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "9d06a33c549a4199b4af3f1f48ff5fd1": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "a50bfb38fbf64413a7a0125a3d157dd8": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "a750d844c86148bfb5b39c34b26b42a3": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "b878681634cb4505b33a5dc139abb06d": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_dbe6788d396a42228aa2699dced0e481",
      "placeholder": "​",
      "style": "IPY_MODEL_a50bfb38fbf64413a7a0125a3d157dd8",
      "value": " 1.57k/1.57k [00:00&lt;00:00, 49.1kB/s]"
     }
    },
    "b8d4e49b68dd48a49072794539d822fc": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "bac1b3f941c84acba980a62395981e00": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "bb6b60b1ac6841708c0bd7497dbd2976": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_8410ee6ef7c34ef7a8d2c94c78d8f95a",
      "placeholder": "​",
      "style": "IPY_MODEL_f4a0f46c7fb344c881b470fb96150d12",
      "value": " 247k/247k [00:00&lt;00:00, 7.87MB/s]"
     }
    },
    "bd79a5726d544a06aa891f08d12de28b": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "c90fb61f65954b209fcd8d6043031311": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "cd294ad0b5c14af59be1106700179200": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "d6a1ad8c1eb44f9a9e95c90f67bc8137": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_19afff5f83c04aea95de1828c2c50690",
      "placeholder": "​",
      "style": "IPY_MODEL_14fd6f274e3d4c609c46de517184c0d1",
      "value": ".gitattributes: 100%"
     }
    },
    "d72368cf2dfe4b67bb73f238507d05c6": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "FloatProgressModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "FloatProgressModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "ProgressView",
      "bar_style": "success",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_72a003a867dd44e2aad1521b8bf20da3",
      "max": 1575,
      "min": 0,
      "orientation": "horizontal",
      "style": "IPY_MODEL_c90fb61f65954b209fcd8d6043031311",
      "value": 1575
     }
    },
    "dbe6788d396a42228aa2699dced0e481": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "e189c705be104b6e8f480d62ab16fde0": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HTMLModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HTMLModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HTMLView",
      "description": "",
      "description_tooltip": null,
      "layout": "IPY_MODEL_ee34da33d0ae412f812f132358ab22f1",
      "placeholder": "​",
      "style": "IPY_MODEL_97d5361038274f15aaec50e9736f96ef",
      "value": " 1.58k/1.58k [00:00&lt;00:00, 50.4kB/s]"
     }
    },
    "e3533899a9d34bed9669d72c74f28933": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "e413397fb74942158c9fe27b3a2dc3cc": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "ec7d3edf94a744518d4a71df9ec7f5a3": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HBoxModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HBoxModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HBoxView",
      "box_style": "",
      "children": [
       "IPY_MODEL_853f66999986457cb1d52d8622f02cb8",
       "IPY_MODEL_4e0a1748248843d8978f6e224a09894f",
       "IPY_MODEL_7f41c49ce2ff417e8db0e178ae70e457"
      ],
      "layout": "IPY_MODEL_bd79a5726d544a06aa891f08d12de28b"
     }
    },
    "ee34da33d0ae412f812f132358ab22f1": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "ee4554c9acf749e2b6ccb81685277cac": {
     "model_module": "@jupyter-widgets/base",
     "model_module_version": "1.2.0",
     "model_name": "LayoutModel",
     "state": {
      "_model_module": "@jupyter-widgets/base",
      "_model_module_version": "1.2.0",
      "_model_name": "LayoutModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "LayoutView",
      "align_content": null,
      "align_items": null,
      "align_self": null,
      "border": null,
      "bottom": null,
      "display": null,
      "flex": null,
      "flex_flow": null,
      "grid_area": null,
      "grid_auto_columns": null,
      "grid_auto_flow": null,
      "grid_auto_rows": null,
      "grid_column": null,
      "grid_gap": null,
      "grid_row": null,
      "grid_template_areas": null,
      "grid_template_columns": null,
      "grid_template_rows": null,
      "height": null,
      "justify_content": null,
      "justify_items": null,
      "left": null,
      "margin": null,
      "max_height": null,
      "max_width": null,
      "min_height": null,
      "min_width": null,
      "object_fit": null,
      "object_position": null,
      "order": null,
      "overflow": null,
      "overflow_x": null,
      "overflow_y": null,
      "padding": null,
      "right": null,
      "top": null,
      "visibility": null,
      "width": null
     }
    },
    "ef74d1ac40d44268b6930a456e1a1fc4": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "ProgressStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "ProgressStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "bar_color": null,
      "description_width": ""
     }
    },
    "f4a0f46c7fb344c881b470fb96150d12": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "DescriptionStyleModel",
     "state": {
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "DescriptionStyleModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/base",
      "_view_module_version": "1.2.0",
      "_view_name": "StyleView",
      "description_width": ""
     }
    },
    "fc5c544522b4494b8526088d092fdf31": {
     "model_module": "@jupyter-widgets/controls",
     "model_module_version": "1.5.0",
     "model_name": "HBoxModel",
     "state": {
      "_dom_classes": [],
      "_model_module": "@jupyter-widgets/controls",
      "_model_module_version": "1.5.0",
      "_model_name": "HBoxModel",
      "_view_count": null,
      "_view_module": "@jupyter-widgets/controls",
      "_view_module_version": "1.5.0",
      "_view_name": "HBoxView",
      "box_style": "",
      "children": [
       "IPY_MODEL_d6a1ad8c1eb44f9a9e95c90f67bc8137",
       "IPY_MODEL_d72368cf2dfe4b67bb73f238507d05c6",
       "IPY_MODEL_b878681634cb4505b33a5dc139abb06d"
      ],
      "layout": "IPY_MODEL_0a2d8a7481604e5ea53b3353ed96a8b4"
     }
    },
    "state": {}
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
